package com.example.day07;

import java.util.Scanner;

// 产生一个 java.lang.NumberFormatException 异常，并处理
// 接收用户输入的字符串，把字符串转为整型并输：scanner.nextLine();
// 如果字符串不能转换，继续接收新的字符串，直至可以转为整型：catch 语句
public class NumberFormatExceptionTest {

    public static void convertStringToInteger() {
        Scanner scanner = new Scanner(System.in);
        System.out.println("input string with integer value: ");
        String s = scanner.nextLine();
        try {
            int i = Integer.parseInt(s);
            System.out.println("integer: " + i);
        } catch (NumberFormatException numberFormatException) {
            System.out.println("input string error.");
            convertStringToInteger(); // 递归调用 recursive call
        }
    }

    public static void main(String[] args) {
        convertStringToInteger();
    }
}